package com.tanhua.dubbo.api;

import com.tanhua.domain.mongo.Comment;
import com.tanhua.domain.vo.PageResult;

/**
 * @author liuyp
 * @date 2021/02/01
 */
public interface CommentApi {
    /**
     * 保存评论
     * @param comment 评论信息对象
     * @return 最新的计数
     */
    long save(Comment comment);

    /**
     * 取消评论操作
     * @param comment 要删除的条件数据
     * @return 最新的计数
     */
    long remove(Comment comment);

    /**
     * 分页查询某一动态的文字评论列表
     * @param page 页码
     * @param pagesize 查询几条
     * @param publishId 动态id
     * @return 动态id对应的文字评论列表
     */
    PageResult<Comment> findCommentList(int page, int pagesize, String publishId);

    /**
     * 分页查询针对某一用户的 某一类型操作列表（比如：针对用户124的点赞列表）
     * @param page 页码
     * @param pagesize 查询几条
     * @param userId 查询针对谁的操作列表
     * @param commentType 操作类型。1点赞，2评论，3喜欢
     */
    PageResult<Comment> findCommentListByType(int page, int pagesize, long userId, int commentType);
}
